1. Field of the Invention
The present invention relates to a motion vector detecting method for detecting the motion vector expressing the direction and rate of motion in each part of an image, and to a motion vector coding method for coding the detected motion vector.
2. Description of the Prior Art
One method often used for coding moving images is the inter-frame predictive coding method for coding using time-based redundancy, a feature of moving images. However, when parts of an image have moved greatly, the characteristics of inter-frame predictive coding cannot be well applied. To compensate for this, motion-compensated inter-frame predictive coding whereby the motion vectors of each part of the image are detected for motion compensation is used.
To code an image signal, the signal is separated into its luminance signal (Y) and chrominance signal (C) components for discrete processing. Normally, motion vector detection is applied only to the luminance signal component, and the chrominance signal motion vector is the motion vector position-corrected with respect to the motion vector detected in the luminance signal component.
An example of the motion vector detection method applied to the chrominance signal in a conventional motion vector detection method is shown in FIG. 5 and described below. It is assumed below that the sampling frequency ratio between the luminance signal Y and the two chrominance signals C.sub.1 and C.sub.2 is 4:1:1. To detect the motion vector, the image frame is divided into N blocks (where N is a natural number), and motion vector detection is applied to each of these blocks. If the ratio between the luminance signal Y and chrominance signals C.sub.1, C.sub.2 is 4:1:1 and the size of the luminance signal Y block is 16.times.16, the size of each chrominance signal C.sub.1, C.sub.2 block is 8.times.8.
Processing of block A.sub.-- Y in the luminance signal Y is considered below. The first step in motion vector detection is to obtain the correlation between adjacent frames; the vector with the greatest correlation is defined as the motion vector of that block. FIG. 5 shows a case wherein the correlation with the previous frame is obtained to detect the motion vector. In FIG. 5 block A.sub.-- Y is the target block A.sub.-- Y in the current frame of the luminance signal Y, block A'.sub.-- Y is the target block in the previous frame of the luminance signal Y, block A.sub.-- C.sub.1 is the target block of the current frame in chrominance signal C.sub.1, block A'.sub.-- C.sub.1 is the target block of the previous frame in chrominance signal C.sub.1, block A.sub.-- C.sub.2 is the target block of the current frame in chrominance signal C.sub.2, and block A'.sub.-- C.sub.2 is the target block of the previous frame in chrominance signal C.sub.2.
It is further assumed that motion vector 3 detected in block A.sub.-- Y indicates movement of +4 in the horizontal direction and +6 in the vertical direction. In this conventional method, motion vector 3 obtained from the luminance signal Y is position corrected for the chrominance signal to obtain motion vectors 4 and 5 of chrominance signals C.sub.1 and C.sub.2. More specifically, motion vectors 4, 5 of blocks A.sub.-- C.sub.1, A.sub.-- C.sub.2 of chrominance signals C.sub.1, C.sub.2 corresponding to block A.sub.-- Y of the luminance signal Y are +2 horizontally and +3 vertically, or one-half of the luminance signal Y motion vector 3 values. (See "Video chapter of ISO 11172 MPEG CD", ISO/IEC JTC1/SC2/WG11 MPEG 91/090, May, 1991.)
FIG. 6 is a block diagram of a conventional coding apparatus utilizing a motion vector of luminance signal Y. In the figures, like elements are identified by the same element numbers.
Input luminance signal Y is input to motion vector detector 31 to detect a motion vector regarding luminance signal Y for each block of a frame.
The motion vector detected by motion vector detector 31 is applied to motion compensation circuit 37 for motion-compensating each block stored in frame memory 36. Input luminance signal Y is subtracted by the motion-compensated signal at a subtractor and, then, applied to discrete cosine transformer (DCT) 32, and further, quantized by quantizer 33. The quantized luminance signal is input to variable-length coding (VLC) means 38.
Simultaneously, the quantized luminance signal is applied to inverse quantizer 34 and the inversion-quantized signal is input to inverse DCT 35. The inversion-DC transformed signal is added to the motion-compensated signal at an adder and, then, stored in frame memory 36.
The motion vector detected by motion vector detector 31 is further input to position correction circuit 39 to obtain a motion vector of a chrominance signal. The motion vector obtained by position correction circuit 39 is applied to motion-compensation circuit 42 to correct the chrominance signal stored in frame memory 43. The chrominance signal corrected using the motion vector is applied to a subtractor to subtract the input chrominance signal. Namely, the input chrominance signal is corrected based on the motion vector of luminance signal Y detected by the motion vector detector 31. The subtracted chrominance signal is discrete-cosine transformed by DCT 44 and quantized by quantizer 45. The quantized chrominance signal is coded by VLC 48 and, then, multiplexed with the quantized and variable-length coded luminance signal by multiplexer 40 to obtain a bit stream.
With this conventional motion vector detection method, however, the motion vectors of the chrominance signals are dependent on the luminance signal motion vector, and the chrominance signal motion vectors are not precisely or specifically detected.
In addition, while it is possible to accurately detect the chrominance signal motion vectors using the same method applied to the luminance signal, as shown in FIG. 7, problems are presented by the increase in the number of operations and the additional information, and the inability to improve the coding characteristics commensurate with the increase in the scale of the hardware.
A sub-band coding method whereby the image signal is divided by a frequency band dividing filter into plural frequency bands, and each frequency band division is coded, transferred, and stored is described next. The advantage of this sub-band coding method is that different coding methods can be used according to the signal properties of each band signal, and parallel processing of each band is possible.
FIG. 8 is a block diagram of an apparatus applying the conventional sub-band coding method. As shown in the figure, this apparatus comprises low pass filters 11, 51 and 61 high pass filters 12, 52 and 62 down samplers 13, 53, 63, 73, 83, and 93 an LL band coding circuit 14, an LH band coding circuit 15, an HL band coding circuit 16, an HH band coding circuit 17, a variable length coding circuit 18(a-d), a multiplexer 19 and a motion vector detector 20.
In the conventional sub-band coding method, the frequency band of the input signal is first divided in two horizontally by the low pass filter 11 and high pass filter 12, and is then similarly divided in two vertically as shown in FIG. 8. Four band signals are obtained as a result: the horizontal low band and vertical low band signal is called the LL band, the horizontal low band and vertical high band signal is called the LH band, the horizontal high band and vertical low band signal is called the HL band, and the horizontal high band and vertical high band signal is called the HH band. The output from each band pass filter is then down-sampled 2:1 by the corresponding down sampler 53, 63, 73, 93.
The LL band has the highest power level and is the most important component. It is therefore coded by motion compensation (MC), discrete cosine transformation (DCT) and quantization at LL band coding means 14, and the H bands (LH, HL, HH bands) are coded by a combination of MC and quantization atLH, HL and HH band coding means 15, 16 and 17, respectively. Motion vector detection is applied only to the LL band, and the motion vector detected from the LL band is used for the other H bands. This is because applying the same motion vector detection used with the LL band to the H bands, as shown in FIG. 9, increases the number of operations and added information, and an improvement in coding characteristics commensurate with the increase in the scale of the hardware required cannot be obtained.
The signals quantized in each band are then coded by the corresponding variable length coding circuit 18. The four band signals are then multiplexed into a single bit stream by the multiplexer 19. (See PCSJ91, 7-3, pp. 173-175.)
The problem with this conventional motion vector detection method is that the motion vectors of the H bands are. dependent upon the motion vector of the LL band, and the H band motion vectors are not accurately detected.